home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 May / EnigmA AMIGA RUN 18 (1997)(G.R. Edizioni)(IT)[!][issue 1997-05][EAR-CD II].iso / earcd / util / dir / managers.lha / Managers / wbpath / pathtest.c next >
C/C++ Source or Header  |  1997-01-15  |  1KB  |  69 lines

  1. ;/*
  2. sc resopt ign=73 opt nostkchk link lib wbpath.o icon csrc=pathtest.c
  3. delete pathtest.lnk quiet
  4. quit
  5. */
  6. /*
  7. ** PathTest.c - clone the Workbench process's command path
  8. ** Copyright © 1994 by Ralph Babel, Falkenweg 3, D-65232 Taunusstein, FRG
  9. ** all rights reserved - alle Rechte vorbehalten
  10. **
  11. ** 1994-03-25 created
  12. */
  13.  
  14. /*** included files ***/
  15.  
  16. #define __USE_SYSBASE
  17.  
  18. #include <exec/types.h>
  19. #include <dos/dos.h>
  20. #include <dos/dosextens.h>
  21. #include <dos/dostags.h>
  22. #include <proto/exec.h>
  23. #include <proto/dos.h>
  24. #include <stdlib.h>
  25. #include <stdio.h>
  26. #include "wbpath.h"
  27.  
  28. /*** entry point ***/
  29.  
  30. int main(int argc, char *argv[])
  31.  {
  32.  int result;
  33.  BPTR fh;
  34.  BPTR path;
  35.  
  36.  result = EXIT_FAILURE;
  37.  
  38.  if(argc == 0) /* Workbench start-up */
  39.   {
  40.   if(DOSBase->dl_lib.lib_Version >= 37)
  41.    {
  42.    if(fh = Open("CON:160/25/320/150/PathTest/AUTO/WAIT", MODE_NEWFILE))
  43.     {
  44.     path = CloneWorkbenchPath((struct WBStartup *)argv);
  45.  
  46.     if(SystemTags("path", SYS_Output, fh, NP_Path, path, TAG_DONE) != -1)
  47.      {
  48.      result = EXIT_SUCCESS;
  49.      }
  50.     else
  51.      {
  52.      FreeWorkbenchPath(path);
  53.      }
  54.  
  55.     Close(fh);
  56.     }
  57.    }
  58.   else
  59.    {
  60.    printf("This program requires Kickstart 2.0+.\n");
  61.    Delay(TICKS_PER_SECOND * 4);
  62.    }
  63.   }
  64.  else
  65.   printf("This program needs to be started from Workbench.\n");
  66.  
  67.  return result;
  68.  }
  69.